package com.xuanmiao.smsback.dao.mapper;

import com.xuanmiao.smsback.dao.model.AuditRecordInfoDO;
import com.xuanmiao.smsback.dao.model.ExpenseCalendarInfoDO;
import com.xuanmiao.smsback.dao.model.RechargeRecordInfoDO;
import com.xuanmiao.smsback.dao.model.UserListInfoDO;
import com.xuanmiao.smsback.domain.qo.AuditRecordInfoQO;
import com.xuanmiao.smsback.domain.qo.ListExpenseCalendarInfoQO;
import com.xuanmiao.smsback.domain.qo.RechargeRecordInfoQO;
import com.xuanmiao.smsback.domain.qo.UserListInfoQO;
import org.apache.ibatis.annotations.Param;


import java.util.List;

public interface UserListInfoMapper {


    Integer count(UserListInfoQO userListInfoQO);

    List<UserListInfoDO> queryUserListInfo(UserListInfoQO userListInfoQO);

    UserListInfoDO getById(@Param("id") Integer id);

    int update(UserListInfoDO convert);

    List<RechargeRecordInfoDO> getRechargeById(RechargeRecordInfoQO rechargeRecordInfoQO);

    List<ExpenseCalendarInfoDO> getExpenseById(ListExpenseCalendarInfoQO listExpenseCalendarInfoQO);

    List<AuditRecordInfoDO> getAuditById(AuditRecordInfoQO auditRecordInfoQO);

    Integer countExpense(ListExpenseCalendarInfoQO listExpenseCalendarInfoQO);

    Integer countRecharge(RechargeRecordInfoQO rechargeRecordInfoQO);

    Integer countAudit(AuditRecordInfoQO auditRecordInfoQO);
}
